//
//  ApplicationObservable.swift
//  UICore
//
//  Created by Flutter on 2021/7/6.
//

import Foundation
import UIKit

public protocol ApplicationObservable: AnyObject {
    func sceneDidDisconnect()

    func sceneDidBecomeActive()

    func sceneWillResignActive()

    func sceneWillEnterForeground()

    func sceneDidEnterBackground()

    func scene(continue userActivity: NSUserActivity)
    
    func scene(openURLContexts URLContexts: Set<UIOpenURLContext>)
}

public extension ApplicationObservable {
    func sceneDidDisconnect() {}

    func sceneDidBecomeActive() {}

    func sceneWillResignActive() {}

    func sceneWillEnterForeground() {}

    func sceneDidEnterBackground() {}

    func scene(continue userActivity: NSUserActivity) {}
    
    func scene(openURLContexts URLContexts: Set<UIOpenURLContext>) {}
}
